import { reqRolePag, reqRoleAdminMenu, reqSaveRoleAdminMenu} from "@/api"
// state：仓库存储数据的地方
const state = {
    // 权限列表
    roleList: [],
    // 默认选中的权限
    chechAdminMenuList: []

}
// mutations：修改state的唯一手段，因此第一个参数必须是state，第二个参数为将要修改的数据
const mutations = {
    setRoleList(state, res){
        state.roleList = res
    },
    setCheckAdminMenu(state, res){
        state.chechAdminMenuList = res.map(obj => {return obj.id})
    }
}
// action：书写业务逻辑（method方法）
const actions = {
    // 获取权限分页
    async getRolePag({commit}, data){
        let res = await reqRolePag(data)
        if(res.success) commit("setRoleList", res.data.roleList)
        return res
    },
    // 请求角色的后台菜单
    async getRoleAdminMenu({commit}, data){
        let res = await reqRoleAdminMenu(data)
        if(res.success) commit("setCheckAdminMenu", res.data)
        return res
    },
    // 保存角色分配菜单
    async saveRoleAdminMenu({commit}, data){
        return await reqSaveRoleAdminMenu(data)
    }
 


}
// getters：计算属性
const getters = {

}

export default {
    state,
    mutations,
    actions,
    getters
}